package co.edu.usbcali.unidad.modelo.dto;

import co.edu.usbcali.unidad.modelo.Presupuesto;
import co.edu.usbcali.unidad.presentation.backEndBeans.PresupuestoView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;

/**
 * 
 * 
 * @author Zathura Code Generator http://code.google.com/p/zathura
 * 
 */
public class PresupuestoDTO implements Serializable {
	private static final long serialVersionUID = 1L;
	private String preValorTotal;
	private String estCodigo_Estado;
	private String unrNit_UnidadResidencial;
	private String preCodigo;
	private Date preFecha;
	private boolean rowSelected = false;
	private PresupuestoView presupuestoView;
	private Presupuesto presupuesto;

	public Presupuesto getPresupuesto() {
		return presupuesto;
	}

	public String listener_update(ActionEvent e) {
		try {
			presupuestoView
					.action_modifyWitDTO(
							((preCodigo == null) || preCodigo.equals("")) ? null
									: new String(preCodigo),
							((preFecha == null) || preFecha.equals("")) ? null
									: preFecha,
							((preValorTotal == null) || preValorTotal
									.equals("")) ? null : new Float(
									preValorTotal),
							((estCodigo_Estado == null) || estCodigo_Estado
									.equals("")) ? null : new String(
									estCodigo_Estado),
							((unrNit_UnidadResidencial == null) || unrNit_UnidadResidencial
									.equals("")) ? null : new String(
									unrNit_UnidadResidencial));
			rowSelected = !rowSelected;
		} catch (Exception ex) {
			return "";
		}

		return "";
	}

	public void listener_cancel(ActionEvent e) {
		preCodigo = presupuesto.getPreCodigo().toString();
		preFecha = presupuesto.getPreFecha();
		preValorTotal = (presupuesto.getPreValorTotal() != null) ? presupuesto
				.getPreValorTotal().toString() : null;
		estCodigo_Estado = (presupuesto.getEstado().getEstCodigo() != null) ? presupuesto
				.getEstado().getEstCodigo().toString()
				: null;
		unrNit_UnidadResidencial = (presupuesto.getUnidadResidencial()
				.getUnrNit() != null) ? presupuesto.getUnidadResidencial()
				.getUnrNit().toString() : null;
		rowSelected = !rowSelected;
	}

	/**
	 * <p>
	 * Bound to commandLink actionListener in the ui that renders/unrenders the
	 * Customer details for editing.
	 * </p>
	 */
	public void toggleSelected(ActionEvent e) {
		preCodigo = presupuesto.getPreCodigo().toString();
		preFecha = presupuesto.getPreFecha();
		preValorTotal = (presupuesto.getPreValorTotal() != null) ? presupuesto
				.getPreValorTotal().toString() : null;
		estCodigo_Estado = (presupuesto.getEstado().getEstCodigo() != null) ? presupuesto
				.getEstado().getEstCodigo().toString()
				: null;
		unrNit_UnidadResidencial = (presupuesto.getUnidadResidencial()
				.getUnrNit() != null) ? presupuesto.getUnidadResidencial()
				.getUnrNit().toString() : null;
		rowSelected = !rowSelected;
	}

	public void setPresupuesto(Presupuesto presupuesto) {
		this.presupuesto = presupuesto;
	}

	public PresupuestoView getPresupuestoView() {
		return presupuestoView;
	}

	public void setPresupuestoView(PresupuestoView presupuestoView) {
		this.presupuestoView = presupuestoView;
	}

	public String getPreValorTotal() {
		return preValorTotal;
	}

	public void setPreValorTotal(String preValorTotal) {
		this.preValorTotal = preValorTotal;
	}

	public String getEstCodigo_Estado() {
		return estCodigo_Estado;
	}

	public void setEstCodigo_Estado(String estCodigo_Estado) {
		this.estCodigo_Estado = estCodigo_Estado;
	}

	public String getUnrNit_UnidadResidencial() {
		return unrNit_UnidadResidencial;
	}

	public void setUnrNit_UnidadResidencial(String unrNit_UnidadResidencial) {
		this.unrNit_UnidadResidencial = unrNit_UnidadResidencial;
	}

	public Date getPreFecha() {
		return preFecha;
	}

	public void setPreFecha(Date preFecha) {
		this.preFecha = preFecha;
	}

	public String getPreCodigo() {
		return preCodigo;
	}

	public void setPreCodigo(String preCodigo) {
		this.preCodigo = preCodigo;
	}

	public boolean isRowSelected() {
		return rowSelected;
	}

	public void setRowSelected(boolean rowSelected) {
		this.rowSelected = rowSelected;
	}
}
